#ifndef __QUEUE_H
#define __QUEUE_H

typedef int ElementType;
struct queue {
	int capacity;
	int size;
	int front;
	int rare;
	ElementType *array;
};
typedef struct queue* Queue;

int isEmpty(Queue q);
int isFull(Queue q);
Queue createQueue(int capacity);
void makeEmpty(Queue q);
void enQueue(Queue q, ElementType x);
ElementType deQueue(Queue q);
ElementType front(Queue q);
void disposeQueue(Queue q);

#endif